home *** CD-ROM | disk | FTP | other *** search
/ HyperLib 1997 Winter - Disc 1 / HYPERLIB-1997-Winter-CD1.ISO.7z / HYPERLIB-1997-Winter-CD1.ISO / オンラインウェア / PRG / ICProgKit 1.3.sit / ICProgKit1.3 / APIs / ICKeys.h < prev    next >
Text File  |  1996-07-14  |  8KB  |  217 lines

  1. /* ・・・Start Header・・・ */
  2.  
  3. /* File:         ICKeys.h
  4.  * Generated by: 1.0d4
  5.  * For:          IC 1.3
  6.  * On:           Sunday, 14 July 1996, 20:19:55
  7.  * 
  8.  * This file is part of the Internet Configuration system and
  9.  * is placed in the public domain for the benefit of all.
  10.  */
  11.  
  12. /* ・・・End Header・・・ */
  13.  
  14. /*
  15.     IMPORTANT NOTES ABOUT THE C CONVERSION
  16.     --------------------------------------
  17.     
  18.     o Pascal "var" parameters are converted from "var x : y" to "y *x".  This
  19.       means that when you see the parameter "y *x" you should be aware that
  20.             you *cannot pass in nil*.  In future this restriction may be eased,
  21.             especially for the attr parameter to ICGetPref.  Parameters where nil
  22.             is legal are declared using the explicit pointer type, ie "yPtr x".
  23.  
  24.     o Strings are *Pascal* strings.  This means that they must be word aligned.
  25.         MPW and Think C do this automatically.  The last time I check, Metrowerks
  26.         C does not.  If it still doesn't, then IMHO it's a bug in their compiler
  27.         and you should report it to them.
  28.  
  29.     o The canonical Internet Config interface is defined in Pascal.  These
  30.         headers have not been thoroughly tested.  If there is a conflict between
  31.         these headers and the Pascal interfaces, the Pascal should take precedence.
  32. */
  33.  
  34. /* ///////////////////////////////////////////////////////////////////////////////// */
  35.  
  36. #ifndef __ICKEYS__
  37. #define __ICKEYS__
  38.  
  39. #ifndef __TYPES__
  40. #include <Types.h>
  41. #endif
  42.  
  43. #ifndef __ALIASES__
  44. #include <Aliases.h>
  45. #endif
  46.  
  47. /* ///////////////////////////////////////////////////////////////////////////////// */
  48.  
  49. /* ・・・Start ICKeys.h・・・ */
  50.  
  51. #define kICRealName "¥pRealName"    /* PString */
  52. #define kICEmail "¥pEmail"    /* PString -- user@host.domain */
  53. #define kICMailAccount "¥pMailAccount"    /* PString -- user@host.domain */
  54. #define kICMailPassword "¥pMailPassword"    /* PString -- scrambled */
  55. #define kICNewsAuthUsername "¥pNewsAuthUsername"    /* PString */
  56. #define kICNewsAuthPassword "¥pNewsAuthPassword"    /* PString -- scrambled */
  57. #define kICArchiePreferred "¥pArchiePreferred"    /* PString -- formatted */
  58. #define kICArchieAll "¥pArchieAll"    /* STR# -- formatted */
  59. #define kICUMichPreferred "¥pUMichPreferred"    /* PString -- formatted */
  60. #define kICUMichAll "¥pUMichAll"    /* STR# -- formatted */
  61. #define kICInfoMacPreferred "¥pInfoMacPreferred"    /* PString -- formatted */
  62. #define kICInfoMacAll "¥pInfoMacAll"    /* STR# -- formatted */
  63. #define kICPhHost "¥pPhHost"    /* PString -- host.domain */
  64. #define kICWhoisHost "¥pWhoisHost"    /* PString -- host.domain */
  65. #define kICFingerHost "¥pFingerHost"    /* PString -- host.domain */
  66. #define kICFTPHost "¥pFTPHost"    /* PString -- host.domain */
  67. #define kICTelnetHost "¥pTelnetHost"    /* PString -- host.domain */
  68. #define kICSMTPHost "¥pSMTPHost"    /* PString -- host.domain */
  69. #define kICNNTPHost "¥pNNTPHost"    /* PString -- host.domain */
  70. #define kICGopherHost "¥pGopherHost"    /* PString -- host.domain */
  71. #define kICLDAPServer "¥pLDAPServer"    /* PString -- host.domain */
  72. #define kICLDAPSearchbase "¥pLDAPSearchbase"    /* PString -- string LDAP thing */
  73. #define kICWWWHomePage "¥pWWWHomePage"    /* PString -- URL */
  74. #define kICWAISGateway "¥pWAISGateway"    /* PString -- no idea */
  75. #define kICListFont "¥pListFont"    /* ICFontRecord */
  76. #define kICScreenFont "¥pScreenFont"    /* ICFontRecord */
  77. #define kICPrinterFont "¥pPrinterFont"    /* ICFontRecord */
  78. #define kICDownloadFolder "¥pDownloadFolder"    /* ICFileSpec */
  79. #define kICSignature "¥pSignature"    /* TEXT */
  80. #define kICOrganization "¥pOrganization"    /* PString */
  81. #define kICPlan "¥pPlan"    /* TEXT */
  82. #define kICQuotingString "¥pQuotingString"    /* PString */
  83. #define kICMailHeaders "¥pMailHeaders"    /* TEXT */
  84. #define kICNewsHeaders "¥pNewsHeaders"    /* TEXT */
  85. #define kICMapping "¥pMapping"    /* ICMapEntries */
  86. #define kICCharacterSet "¥pCharacterSet"    /* ICCharTable */
  87. #define kICHelper "¥pHelper・"    /* ICAppSpec */
  88. #define kICServices "¥pServices"    /* ICServices */
  89. #define kICNewMailFlashIcon "¥pNewMailFlashIcon"    /* Boolean */
  90. #define kICNewMailDialog "¥pNewMailDialog"    /* Boolean */
  91. #define kICNewMailPlaySound "¥pNewMailPlaySound"    /* Boolean */
  92. #define kICNewMailSoundName "¥pNewMailSoundName"    /* PString */
  93. #define kICWebBackgroundColour "¥pWebBackgroundColour"    /* RGBColor */
  94. #define kICNoProxyDomains "¥pNoProxyDomains"    /* STR# -- list of domains */
  95. #define kICUseSocks "¥pUseSocks"    /* Boolean */
  96. #define kICSocksHost "¥pSocksHost"    /* PString -- host.domain */
  97. #define kICUseHTTPProxy "¥pUseHTTPProxy"    /* Boolean */
  98. #define kICHTTPProxyHost "¥pHTTPProxyHost"    /* PString -- host.domain */
  99. #define kICUseGopherProxy "¥pUseGopherProxy"    /* Boolean */
  100. #define kICGopherProxyHost "¥pGopherProxyHost"    /* PString -- host.domain */
  101. #define kICUseFTPProxy "¥pUseFTPProxy"    /* Boolean */
  102. #define kICFTPProxyHost "¥pFTPProxyHost"    /* PString -- host.domain */
  103. #define kICFTPProxyUser "¥pFTPProxyUser"    /* PString */
  104. #define kICFTPProxyPassword "¥pFTPProxyPassword"    /* PString -- scrambled */
  105. #define kICFTPProxyAccount "¥pFTPProxyAccount"    /* PString */
  106. #define kICUsePassiveFTP "¥pUsePassiveFTP"    /* Boolean */
  107.  
  108. /* ・・・End ICKeys.h・・・ */
  109.  
  110. #if PRAGMA_ALIGN_SUPPORTED
  111. #pragma options align=mac68k
  112. #endif
  113.  
  114. struct ICFontRecord {
  115.     short size;
  116.     Style face;
  117.     char pad;
  118.     Str255 font;
  119. };
  120. typedef struct ICFontRecord ICFontRecord, *ICFontRecordPtr, **ICFontRecordHandle;
  121.  
  122. struct ICCharTable {
  123.     unsigned char net_to_mac[256];
  124.     unsigned char mac_to_net[256];
  125. };
  126. typedef struct ICCharTable ICCharTable, *ICCharTablePtr, **ICCharTableHandle;
  127.  
  128. struct ICAppSpec {
  129.     OSType fCreator;
  130.     Str63 name;
  131. };
  132. typedef struct ICAppSpec ICAppSpec, *ICAppSpecPtr, **ICAppSpecHandle;
  133.  
  134. struct ICFileInfo {
  135.     OSType fType;
  136.     OSType fCreator;
  137.     Str63 name;
  138. };
  139. typedef struct ICFileInfo ICFileInfo, *ICFileInfoPtr, **ICFileInfoHandle;
  140.  
  141. struct ICFileSpec {
  142.     Str31 vol_name;
  143.     long vol_creation_date;
  144.     FSSpec fss;
  145.     AliasRecord alias;
  146.     /* plus extra data, aliasSize 0 means no alias manager present when
  147.             ICFileSpecification was created */
  148. };
  149. typedef struct ICFileSpec ICFileSpec, *ICFileSpecPtr, **ICFileSpecHandle;
  150.  
  151. enum {
  152.     ICfile_spec_header_size = sizeof(ICFileSpec) - sizeof(AliasRecord)
  153. };
  154.  
  155. struct ICMapEntry {
  156.     short total_length;
  157.     short fixed_length;
  158.     short version;
  159.     OSType file_type;
  160.     OSType file_creator;
  161.     OSType post_creator;
  162.     long flags;
  163.     /* variable part starts here */
  164.     Str255 extension;
  165.     Str255 creator_app_name;
  166.     Str255 post_app_name;
  167.     Str255 MIME_type;
  168.     Str255 entry_name;
  169. };
  170. typedef struct ICMapEntry ICMapEntry, *ICMapEntryPtr, **ICMapEntryHandle;
  171.  
  172. enum {
  173.     ICmap_binary_bit = 0,                        /* file should be transfered in binary as opposed to text mode */
  174.     ICmap_binary_mask = 0x00000001,
  175.     ICmap_resource_fork_bit = 1,        /* the resource fork of the file is significant */
  176.     ICmap_resource_fork_mask = 0x00000002,
  177.     ICmap_data_fork_bit = 2,                /* the data fork of the file is significant */
  178.     ICmap_data_fork_mask = 0x00000004,
  179.  
  180.     ICmap_post_bit = 3,                            /* post process using post fields */
  181.     ICmap_post_mask = 0x00000008,
  182.  
  183.     ICmap_not_incoming_bit = 4,            /* ignore this mapping for incoming files */
  184.     ICmap_not_incoming_mask = 0x00000010,
  185.     ICmap_not_outgoing_bit = 5,            /* ignore this mapping for outgoing files */
  186.     ICmap_not_outgoing_mask = 0x00000020,
  187.  
  188.     ICmap_fixed_length = 22                    /* number in fixed_length field */
  189. };
  190.  
  191. struct ICServiceEntry {
  192.     Str255 name;
  193.     short port;
  194.     short flags;
  195. };
  196. typedef struct ICServiceEntry ICServiceEntry, *ICServiceEntryPtr, **ICServiceEntryHandle;
  197.  
  198. struct ICServices {
  199.     short count;
  200.     ICServiceEntry services[1];
  201. };
  202. typedef struct ICServices ICServices, *ICServicesPtr, **ICServicesHandle;
  203.  
  204. enum {
  205.     ICservices_tcp_bit = 0,
  206.     ICservices_tcp_mask = 0x00000001,
  207.     ICservices_udp_bit = 1,
  208.     ICservices_udp_mask = 0x00000002
  209.     /* both bits can be set, which means the service is both TCP and UDP, eg daytime */
  210. };
  211.  
  212. #if PRAGMA_ALIGN_SUPPORTED
  213. #pragma options align=reset
  214. #endif
  215.  
  216. #endif
  217.